package com.thb.pay.payment.service;

import com.thb.pay.api.payment.vo.req.AgentpayPassageAccountPageReq;
import com.thb.pay.api.payment.vo.req.AgentpayPassageAccountReq;
import com.thb.pay.api.payment.vo.resp.AgentpayPassageAccountVo;
import com.thb.pay.core.utils.PageResult;
import com.thb.pay.db.service.IBaseService;
import com.thb.pay.payment.entity.AgentpayPassageAccount;

import java.util.List;

/**
 * <p>
 * 代付-通道-账户表 服务类
 * </p>
 *
 * @author lucky
 * @since 2019-07-21
 */
public interface AgentpayPassageAccountService extends IBaseService<AgentpayPassageAccount> {
    /**
     * @param pageReq 分页代付通道账号
     * @Description
     * @Author lucky
     * @data 2019/9/25 23:28
     */
    PageResult<AgentpayPassageAccountVo> findPage(AgentpayPassageAccountPageReq pageReq);

    /**
     * @param agentpayPassageAccountReq
     * @Description 添加代付通道账号信息
     * @Author lucky
     * @data 2019/9/25 23:28
     */
    void add(AgentpayPassageAccountReq agentpayPassageAccountReq);

    /**
     * @param agentpayPassageAccountReq
     * @Description 修改代付通道账号信息
     * @Author lucky
     * @data 2019/9/25 23:29
     */
    void update(AgentpayPassageAccountReq agentpayPassageAccountReq);

    /**
     * @param id
     * @Description 获取代付通道账号信息明细
     * @Author lucky
     * @data 2019/9/25 23:29
     */
    AgentpayPassageAccountVo getById(Long id);


    /**
     * @param conditionParam 条件信息
     * @Description 获取代付通道账号信息列表
     * @Author lucky
     * @data 2019/9/25 23:32
     */
    List<AgentpayPassageAccountVo> findAllList(AgentpayPassageAccountReq conditionParam);

    /**
     * @param agentpayPassageId 代付通道ID
     * @Description 根据代付通道ID, 查询所有代付通道账户列表
     * @Author lucky
     * @data 2019/9/25 23:27
     */
    List<AgentpayPassageAccountVo> findAllByPassageId(Integer agentpayPassageId);
}
